# -*- coding: utf-8 -*-
import socket

def get_info(host, port):
    try:
        #Создаём сокет
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.connect((host, port))

        s.send('\xfe')          #Отправляем 0xFE: пинг сервера

        #Читать столько данных, сколько можем (макс. размер пакета: 241 байт)

        d = s.recv(512)
        s.close()
        
        #assert d[0] == '\xff'   #Проверяем, что 0xFF отсоединён

        #Удаляем идент пакет (0xFF) и короткие содержащий длину строки,
        #Декодируем UCS-2 строку    #Разделяем на список
        
        d = d[3:].decode('utf-16be').split(u'\xa7')
        print 'motd:\t%s\nplayers:\t%s' % (d[0], (d[1] +'/'+ d[2]))

    except:
        print u'Сервер не найден'
        pass
        
    #Возвращаем словарь значений (Dict)
    '''return {'motd':     d[0],
            'players':  p}'''

#for i in range(1):
while 1:
    get_info('mc.deviling.ru', 25567)
    #raw_input()
